using Net35.Xrm.Sdk;
using System;
using System.Runtime.Serialization;
namespace Net35.Crm.Sdk.Messages
{
	[DataContract(Namespace = "http://schemas.microsoft.com/crm/2011/Contracts")]
	public sealed class QualifyLeadRequest : OrganizationRequest
	{
		public EntityReference LeadId
		{
			get
			{
				if (base.Parameters.Contains("LeadId"))
				{
					return (EntityReference)base.Parameters["LeadId"];
				}
				return null;
			}
			set
			{
				base.Parameters["LeadId"] = value;
			}
		}
		public bool CreateAccount
		{
			get
			{
				return base.Parameters.Contains("CreateAccount") && (bool)base.Parameters["CreateAccount"];
			}
			set
			{
				base.Parameters["CreateAccount"] = value;
			}
		}
		public bool CreateContact
		{
			get
			{
				return base.Parameters.Contains("CreateContact") && (bool)base.Parameters["CreateContact"];
			}
			set
			{
				base.Parameters["CreateContact"] = value;
			}
		}
		public bool CreateOpportunity
		{
			get
			{
				return base.Parameters.Contains("CreateOpportunity") && (bool)base.Parameters["CreateOpportunity"];
			}
			set
			{
				base.Parameters["CreateOpportunity"] = value;
			}
		}
		public EntityReference OpportunityCurrencyId
		{
			get
			{
				if (base.Parameters.Contains("OpportunityCurrencyId"))
				{
					return (EntityReference)base.Parameters["OpportunityCurrencyId"];
				}
				return null;
			}
			set
			{
				base.Parameters["OpportunityCurrencyId"] = value;
			}
		}
		public EntityReference OpportunityCustomerId
		{
			get
			{
				if (base.Parameters.Contains("OpportunityCustomerId"))
				{
					return (EntityReference)base.Parameters["OpportunityCustomerId"];
				}
				return null;
			}
			set
			{
				base.Parameters["OpportunityCustomerId"] = value;
			}
		}
		public EntityReference SourceCampaignId
		{
			get
			{
				if (base.Parameters.Contains("SourceCampaignId"))
				{
					return (EntityReference)base.Parameters["SourceCampaignId"];
				}
				return null;
			}
			set
			{
				base.Parameters["SourceCampaignId"] = value;
			}
		}
		public OptionSetValue Status
		{
			get
			{
				if (base.Parameters.Contains("Status"))
				{
					return (OptionSetValue)base.Parameters["Status"];
				}
				return null;
			}
			set
			{
				base.Parameters["Status"] = value;
			}
		}
		public QualifyLeadRequest()
		{
			base.RequestName = "QualifyLead";
			this.LeadId = null;
			this.CreateAccount = false;
			this.CreateContact = false;
			this.CreateOpportunity = false;
		}
	}
}
